<?php

/**
 * login actions.
 *
 * @package    universidad
 * @subpackage login
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class loginActions extends sfActions
{
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */
	public function executeIndex(sfWebRequest $request)
	{
		$this->form = new LoginForm();
		
		if($request->isMethod(sfRequest::POST) || $request->isMethod(sfRequest::PUT)) {
			$this->form->bind($request->getParameter("login"));
			
			if($this->form->isValid()) {
				$values = $request->getParameter('login');
				
				$miembro = Miembro::Login($values['correo'], $values['contrasena']);
				if ($miembro) {
					$this->getUser()->setAuthenticated(true);
					$this->getUser()->addCredentials('miembro');
					$this->getUser()->setAttribute('miembro_id', $miembro->getId());
					$this->getUser()->setAttribute('miembro_correo', $miembro->getCorreo());
					$this->getUser()->setAttribute('miembro_nombre', $miembro->getNombreCompleto());
					$this->redirect('miembros/index');
				}
				else {
					$this->error = 'Correo incorrecto';
				}
			}
			else {
				$this->error = 'Debe ingresar su correo y su contraseña';
			}
		}
		
	}
	
	public function executeLogout(sfWebRequest $request)
	{
		$this->getUser()->setAuthenticated(false);
		$this->getUser()->getAttributeHolder()->clear();
		$this->redirect('login/index');
	}
	
}
